package ar.com.algotres.tpdos.modelo.disparos;

import ar.com.algotres.tpdos.modelo.disparos.estrategias.EstrategiaDeImpacto;

public class DisparoMinaConRetardo extends Disparo {

	private Integer turno;

	protected DisparoMinaConRetardo(EstrategiaDeImpacto estrategiaDeImpacto,
			Integer turno) {
		super(estrategiaDeImpacto);
		this.turno = turno;
	}

	private boolean sePuedeDisparar() {
		return new Integer(0).equals(this.turno);
	}

	@Override
	public void vivir() throws PosicionAExplotarInvalidaExcpetion {
		if (this.sePuedeDisparar()) {
			super.vivir();
		} else {
			this.turno--;
		}
	}
}
